package com.example.demo02.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 商家优惠券购买订单表
 * </p>
 *
 * @author 徐嘉立
 * @since 2024-03-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class ShopDiscountOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 服务订单ID，规则与pay表的payid一致
     */
    @TableId(type = IdType.INPUT)
    private String orderid;

    /**
     * 商家优惠券商品ID
     */
    private Integer discountGoodsid;

    /**
     * shop_user表的userid
     */
    private Integer shopUserid;

    /**
     * 订单时间
     */
    private Date orderTime;

    /**
     * 订单有效期开始时间（商家买券后可以发券的开始时间）
     */
    private Date orderStartTime;

    /**
     * 订单有效期结束时间（商家买券后可以发券的结束时间 带上23:59:59）
     */
    private Date orderEndTime;

    /**
     * 付费方式（2：微信  3支付宝 ）
     */
    private String paymode;

    /**
     * 支付状态（0未支付 1已支付）
     */
    private String payState;

    /**
     * 订单号（微信和支付宝、一网通的支付LSH）
     */
    private String lsh;

    /**
     * 收费金额
     */
    private Integer payment;

    /**
     * 详情(**手机号-**商户名-增值服务名，多个以逗号隔开分别多少钱)
     */
    private String content;

    /**
     * 支付时间
     */
    private Date payTime;

    /**
     * （暂不支持）开票主体ID
     */
    private Integer invoiceEntityid;

    /**
     * 支付手续费（单位：分）
     */
    private Integer handlingFee;

    /**
     * 支付更新时间
     */
    private Date payUpdateTime;

    /**
     * 商户账号手机号
     */
    private String mobilenum;

    /**
     * 商户ID
     */
    private Integer shopid;

    /**
     * 购买明细列表，json字符串（备用）
     */
    private String orderJson;

    /**
     * 支付时间yyyyMMdd
     */
    private String payDate;

    /**
     * 购买数量
     */
    private Integer buyNum;

    /**
     * 商户优惠券创建状态（0:未创建 1:已创建)（支付完成后后台生成discount的状态）
     */
    private String discountMakeState;

    /**
     * 商户优惠券创建时间
     */
    private Date discountMakeTime;

    /**
     * 创建完的商户优惠券ID
     */
    private Integer discountid;

    /**
     * 创建时间
     */
    private Date createTime;

}
